package com.lhczf.lucenedb.production;

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.BlockingQueue;

/**
 * 一个索引（数据库）使用一个队列
 *
 * @author: 刘华春
 * @date: 2019/2/6
 */
public abstract class AbstractDataQueues {

    protected static final String MERGE_DATA_QUEUE_KEY = "merge";
    protected static final Map<String, BlockingQueue> DATA_QUEUE = new HashMap<>(16);

    /**
     * 将已经合并完的索引目录存入BACKUP_INDEX_DATA_MAP
     * 这个MAP的key为索引名称，value为当前索引已经合并完的索引目录的集合
     */
    protected static final Map<String, Map<String, List<String>>> BACKUP_INDEX_DATA_MAP = new HashMap<>(16);
    /**
     *
     * 队列的配置信息
     *
     */
    protected abstract void dataQueueConfig();
}
